package day17.Xml;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

import java.util.ArrayList;
import java.util.List;

public class Lian01 {
    public static void main(String[] args) throws DocumentException {
//        获取一个解析器
        SAXReader saxReader=new SAXReader();
//        利用解析器,把xml文件加载到内存中,并返回一个文档
        Document document = saxReader.read("jinjie\\xml\\student.xml");
//        获取根目录
        Element rootElement = document.getRootElement();
//        通过根目录获取子标签
//        List list = rootElement.elements();
        //        通过根目录获取指定的子标签
        List<Element> listElement = rootElement.elements("student");
//       遍历集合获取每一个Student标签
        ArrayList<Student>list=new ArrayList<>();
        for (Element element : listElement) {
//            获取id这个属性
            Attribute attribute = element.attribute("id");
            //            获取id的属性值
            String id = attribute.getValue();
//            获取name标签 获取调用者指定的子标签
            Element nameElement = element.element("name");
//            获取这个标签的标签体内容
            String name = nameElement.getText();
            //            获取age标签 获取调用者指定的子标签
            Element ageElement = element.element("age");
            //            获取这个标签的标签体内容
            String age = ageElement.getText();
//            System.out.println(id);
////            System.out.println(name);
////            System.out.println(age);
            Student s=new Student(id,name,Integer.parseInt(age));
            list.add(s);
        }
        for (Student student : list) {
            System.out.println(student);
        }
    }
}
